package net.shopxx.template.method;

import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Component;

import freemarker.template.TemplateMethodModel;
import freemarker.template.TemplateModelException;

/**
* 模板方法 - StringUtils调用类
* 
* @author frankie
* @version 3.0
*/
@Component("StringUtilsMethod")
public class StringUtilsMethod implements TemplateMethodModel {

	@SuppressWarnings("rawtypes")
	public Object exec(List arguments) throws TemplateModelException {
		
		if (arguments != null && !arguments.isEmpty() && arguments.get(0) != null && StringUtils.isNotEmpty(arguments.get(0).toString())) {
			
			String method = arguments.get(0).toString();
			String param = arguments.get(1).toString();
			if(method.equals("isBlank")){
				return StringUtils.isBlank(param);
			}else if(method.equals("isNotBlank")){
				return StringUtils.isNotBlank(param);
			}else if(method.equals("isEmpty")){
				return StringUtils.isEmpty(param);
			}else if(method.equals("isNotEmpty")){
				return StringUtils.isNotEmpty(param);
			}
			else{
				return null;
			}
		}
		return null;
	}
}
